package codigoObjeto;

import java.util.ArrayList;
import java.util.List;

public class Assembly {

	public static List<Codigo> codigoObjeto = new ArrayList<Codigo>();
	
	public static void add(Codigo c){
		codigoObjeto.add(c); 
	}
	
	public static String print(){
		String codigoString = "";
		
		if (codigoObjeto != null && codigoObjeto.size() > 0){
			
			//codigoString += codigoObjeto.get(codigoObjeto.size()-1).toString();
			
			for (Codigo c : codigoObjeto) {
				codigoString += c.toString();
			}
		}
		
		return codigoString;
	}
	
	public static String getRotuloByOperadorRegistrador(String destino){
		String endereco = "";
		if (codigoObjeto != null){
			for (Codigo c : codigoObjeto) {
				if (c.getDestino().equals(destino)){
					endereco = c.getRotulo().getLabel();  //retornara a ultima ocorrencia do destino
				}
			}
		}
		
		return endereco;
	}
	
	public static void setLastOperatorCode(Operator ope){
		codigoObjeto.get(codigoObjeto.size()-1).setOperator(ope);
	}
	
	public static void clean(){
		codigoObjeto = new ArrayList<Codigo>();
	}
	
}
